<?php

class Parameter 
{	
	public $get = array();
	public $post = array();
	public $cookie = array();
	public $files = array();
	public $server = array();
	
	public function __construct() 
	{
		$_GET = $this->clean($_GET);
		$_POST = $this->clean($_POST);
		$_REQUEST = $this->clean($_REQUEST);
		$_COOKIE = $this->clean($_COOKIE);
		$_FILES = $this->clean($_FILES);
		$_SERVER = $this->clean($_SERVER);
	
		$this->get = $_GET;
		$this->post = $_POST;
		$this->request = $_REQUEST;
		$this->cookie = $_COOKIE;
		$this->files = $_FILES;
		$this->server = $_SERVER;
	}
	
	public function clean($data) 
	{
		if (is_array($data)) {
			foreach ($data as $key => $value) {
				unset($data[$key]);
	
				$data[$this->clean($key)] = $this->clean($value);
			}
		} else {
			$data = htmlspecialchars($data, ENT_COMPAT, 'UTF-8');
		}
	
		return $data;
	}	
	
	public function varPost($name,$default_value = NULL)
	{
		if (!isset($this->post[$name]))
		{
			return $default_value;
		}
		return $this->post[$name];
	}
	
	public function isPost()
	{
		return !empty($_POST);
	}
}

?>